package com.example.myspringframework.core.convert.support;

import com.example.myspringframework.core.convert.converter.ConverterRegistry;

/**
 * Spring中使用的默认转换器
 */
public class DefaultConversionService extends GenericConversionService{
    public DefaultConversionService() {
        this.addDefaultConverters(this);
    }

    /**
     * 添加一些默认提供的转换器
     */
    public void addDefaultConverters(ConverterRegistry converterRegistry) {
        // String类型 -> Number类型
        converterRegistry.addConverterFactory(new StringToNumberConverterFactory());
        // String类型 -> Boolean类型
        converterRegistry.addConverter(new StringToBooleanConverter());

        converterRegistry.addConverter(new StringToLocalDateConverter("yyyy-MM-dd"));
        //TODO 添加其他ConverterFactory
    }
}
